There is known a magnetic random access memory (MRAM) as one type of resistive random access memories. A resistance change ratio of the MRAM using STT (Spin Transfer Torque)-type MTJ elements becomes lower when the MRAM is downscaled. In this case, since a read signal difference becomes smaller, it is necessary for the MRAM to detect data with high accuracy when reading the data. In order to read the data with high accuracy, reference data is preferably closer to the intermediate between data “1” and data “0”. However, in the downscaled MRAM, it is disadvantageously difficult to set the reference data to be closer to the intermediate between the data “1” and the data “0”.